【簡単】AWS Systems Manager Session Manager での実行ログをS3に吐き出してみた

【簡単】AWS Systems Manager Session Manager での実行ログをS3に吐き出してみた

Clock Icon2021.07.26

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

テクニカルサポートチームの丸屋 正志(Maruya Masashi)です。

そもそも AWS Systems Manager Session Manager(SSM) とは?!

セッションマネージャーは、対話型のワンクリックブラウザーベースのシェルまたは、 AWS CLI を介して Amazon EC2 インスタンスを管理出来る、完全に管理された AWS System Manager の機能です。セッションマネージャーは、インバウンドポートを開いたり、踏み台ホストを維持したり、SSHキーを管理したりすることなく、安全で監査可能なインスタンス管理を提供してくれます。

引用元 : AWS Systems Manager Session Manager

IAM ロール編

ここでは、EC2にアタッチする際のロールを作成していきます。
なお、ポリシー(AmazonS3FullAccess)を利用していますが、許可したいサービスだけに絞っていただいても構いません。

IAM ロールコンソールにアクセスし、右上の【ロールを作成】を選択します。

Image from Gyazo

ステップ 1 にて

下記を選択の上、【次のステップ : アクセス権限】を選択します。

  • 信頼されたエンティティの種類を選択 : 【AWS サービス】
  • ユースケースの選択 : 【EC2】

Image from Gyazo

ステップ 2 にて

下記2種類のポリシーを選択してアタッチします。

  • AmazonSSMManagedInstanceCore
  • AmazonS3FullAccess

Image from Gyazo

ステップ 3 にて

タグなどは、任意となっております。

ステップ 4 にて

ロール名を任意の名前して頂いて、アタッチされているポリシーが合っているかを確認します。

  • ロール名 : 【EC2-SSM】

Image from Gyazo

EC2 インスタンス編

『IAM ロール編』で作成しましたロール名を、この章で使用致します。

EC2 インスタンスコンソールにアクセスし、右上の【インスタンスを起動】を選択します。

『ステップ 3: インスタンスの詳細の設定』のIAMロール部分だけは選択していただき、他は任意で構いません。

  • IAM ロール : 【EC2-SSM】

Image from Gyazo

System Manager編

ここでは、ログの出力場所を指定します。

AWS System Manager セッションマネージャーコンソールにアクセスし、【設定】タブを選択後に【編集】を選択します。

Image from Gyazo

編集画面に移りましたら、下にスクロールし『S3 Logging』の所で【Enable】にチェックを入れます。

  • Choose S3 bucket : プルダウンメニューから、出力したいS3バケット名を選択

Image from Gyazo

実際に接続してみる

セッションの開始コンソールにアクセスし、ターゲットのインスタンスを選択し、【セッションを開始する】を選択します。

Image from Gyazo

開始しますと、別タブが開き下記の様に表示されます。
(右上の【終了】もしくは、exit→exitでセッションを終了するとS3に書き出されます)

Image from Gyazo

S3 編

バケット内のを確認してみると...実際にログが書き出されているのが確認出来ます!

Image from Gyazo

各種参考資料

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.